# 字符串的编码
a = '你好'
print("'你好'的编码为：",'你好'.encode('utf-8'))
print('\n')
# 字符串的解码
b = '你好'.encode('utf')
print(b,'解码为：',b.decode('utf'))
print('\n')

# 字符串的CRUD
#创建字符串s
s = "  hello, world，I am coming！ "
print('创建的字符串s为：',s)
print('\n')

# 检索字符串
print('字符串s的第三个字符为：',s[2])
print('\n')

#用find获取目标字符的索引值
print('用find，字符串s中字母d的索引值为：',s.find('d'))
print('\n')

#用find获取目标字符的索引值，当不存在时返回-1
print('用find，字符串s中字母z的索引值为：',s.find('z'))
print('\n')

#用index获取目标字符的索引值
print('用index，字符串s中字母r的索引值为：',s.index('r'))
print('\n')

#用index获取目标字符的索引值，当不存在时报错
try:
    print('用index，字符串s中字母z的索引值为：',s.index('z'))
except:
    pass
# startswith 和 endswith 用法
print('s字符串是否以’hello‘开头的:',s.startswith("hello"))
print('\n')

print('s字符串是否以’ld‘开头的:',s.endswith("ld"))
print('\n')

# 字符串更新：replace替换
print('将字符串中world替换为World：',s.replace('world','World'))
print('\n')

# 字符串更新：split分割
s1=s.split(",")
print("s1=",s1)
print('\n')

# 字符串更新：join拼接
print("s1拼接后的为:",",".join(s1))
print('\n')

#字符串更新：delete删除
print('用strip删除字符串s中的空格：',s.strip())
print('\n')

print('用lstrip删除字符串s中左边的空格：',s.lstrip())
print('\n')

print('用rstrip删除字符串s中右边的空格：',s.rstrip())
print('\n')


#练习字符串的格式化
#默认顺序
home = "河南"
name = "张三"
print("使用默认顺序格式化:","热烈欢迎来自{}的{}！".format(home,name))
print('\n')

#指定参数索引
print("指定参数索引格式化：","热烈欢迎来自{0}的{1}，没错，他来自中原大地{0}！".format(home,name))
print('\n')

#按关键词参数
print("用关键词参数格式化：","热烈欢迎来自{home}的{name}，没错，他来自中原大地{home}！".format(home="河南",name="张三"))
print('\n')

#按变量（推荐使用）
print("按变量格式化（推荐使用）:",f'热烈欢迎来自{home}的{name}！')
print('\n')

# % 格式化
print("%格式化:",'热烈欢迎来自%s的%s! ' % ('河南','张三'))
print('\n')

# 小数表示
print("3.1415926保存两位小数为：","{:.2f}".format(3.1415926))
print('\n')

#将content内容保存到本地文件
# open函数打开文件、指定文件名, 方法(读, 写, 追加), 编码格式
output = open("big.txt", "w", encoding="utf-8")
content = "Big brother is watching you！"
# 正式写入文件
output.write(content)
# 关闭文件句柄
output.close()